Recent years have shown a proliferation in the number of individuals who own and operate mobile computing devices (e.g., smartphones and tablets). Typically, an individual uses his or her mobile computing device to carry out different types of activities throughout the day, e.g., placing phone calls, sending and receiving electronic messages, accessing the internet, and the like. These activities are highly personalized and specific to the individual, and, as a result, a pattern of behavior typically exists within the scope of each application that the individual accesses on his or her mobile computing device. For example, within a messaging application on an individual's mobile computing device, there typically exists a pattern among the contacts with whom he or she regularly communicates. These patterns present an opportunity for application designers to preempt an individual's habits and to dynamically adjust to provide an enhanced overall user experience. Such dynamic adjustment can include, for example, updating the manner in which content is displayed, suggesting input for the individual, recalling the individual's preferences, and the like.
Typical approaches used to implement dynamic adjustment are piecemeal at best. More specifically, when application developers desire to enhance their applications with dynamic adjustment capabilities, they are imposed with the difficult task of building frameworks that can identify and respond to individuals' behavioral patterns. Consequently, these frameworks often deliver inaccurate and undesirable functionality, which can frustrate individuals and degrade their overall user experience. Moreover, these frameworks can be inefficient with respect to the rate at which behavioral patterns are identified and to which they are adjusted. Such inefficiency can degrade the battery performance and overall responsiveness of mobile computing devices, especially when application developers fail to design the frameworks to identify appropriate times to carry out management tasks.